#include "AFBS.hpp"
#include "tools.hpp"
#include <array>
#include <fmt/base.h>
#include <fmt/ranges.h>
#include <vector>

int main()
{
    auto& ansi = lxj::OpenANSI::instance();
    ansi.set_mode(1).set_color(76);
    lxj::Time time;
    auto&     random = lxj::Random<float>::instance();

    int                             n = 3;
    std::vector<std::array<int, 3>> edges{{1, 2, 3}, {2, 3, 4}, {3, 1, -8}};
    const char*                     str = lxj::SPFA().spfa(n, edges) ? "YES" : "NO";
    fmt::print(str);

    fmt::print("\n");
    return 0;
}